<?xml version="1.0" encoding="utf-8"?>
<!-- 
There can be multiple tests per test DLL.  This file describes measurements and parameters used by the tests in 
the test DLL.
-->
<TestGroup xmlns="http://www.microsoft.com/hed/mte/xenon/tcs/TestDefinition">
  <Test name="sysmonTest">
    <Variation name="Default">
      <!-- The following section specifies the min and max durations on a test execution.  These elements are 
				optional.  If not specified, then they revert to test defaults.
			-->
      <MinDurationInMilliseconds>
        1000
      </MinDurationInMilliseconds>
      <MaxDurationInMilliseconds>
        90000000
      </MaxDurationInMilliseconds>

      <!-- Measurements are values collected during test suite execution.  Measurements are reported 
			to the DUT control TCS web service.  Measurements can be numeric, textual, or boolean.  Measurements 
			have optional units of measure and an optional resolution.  Measurements defined at the test level 
			apply to all tests.  Measurements can also be defined at the variation level in which case they 
			are specific to the variation.
			-->
      <MeasurementList>
        <Measurement name="Sata0_Errors" units="">
          <UpperLimit>50</UpperLimit>
          <LowerLimit>0</LowerLimit>
        </Measurement>
        <Measurement name="Sata1_Errors" units="">
          <UpperLimit>50</UpperLimit>
          <LowerLimit>0</LowerLimit>
        </Measurement>
        <Measurement name="CPU_FSB_Link_CRC_Errors" units="">
          <UpperLimit>50</UpperLimit>
          <LowerLimit>0</LowerLimit>
        </Measurement>
        <Measurement name="GPU_FSB_Link_CRC_Errors" units="">
          <UpperLimit>50</UpperLimit>
          <LowerLimit>0</LowerLimit>
        </Measurement>
      </MeasurementList>

      <!-- Parameters are use to specify the behaviour of a test suite when running a particular test 
			or variation.  Many parameters can simply be specified as name value pairs.  However, the schema allows 
			for free-form formatting of information in the parameters sections to accommodate a variety of test types.
			-->
      <ParameterList>
        <!-- COMMENTS: 
					if errors exceeds max errors, then app will exit.
					if max errors is set to be 0, then app continues to run even if errors exceeds max errors. 
				-->

        <!-- TIMETORUN:
			       Duration for test to run.  If test runs this length without error, it 'passes'.
			       This number MUST be > 15000 due to an algorithmic decision related to execution.  
			    -->
        <Parameter name="TIMETORUN"> 89000000</Parameter>
        <!-- TIMESLEEP: Duration between SATA error checks. -->
        <Parameter name="TimeSleep"> 1</Parameter>
        <!-- TIMELOG: Duration between logging in milliseconds. No logging if set to 0 -->
        <Parameter name="TimeLog"> 900000</Parameter>
        <!-- CHECKODD: Check GPU PSRO. -->
        <!-- CHECKODD: Check SATA. -->
        <Parameter name="CheckSATA"> 0</Parameter>
        <!-- CHECKODD: Check ODD error. -->
        <Parameter name="CheckODD"> 1</Parameter>
        <!-- MAXERROR: Maximun SATA ODD errors allowed. -->
        <Parameter name="ODDMaxErrors"> 0</Parameter>
        <!-- CHECKHDD: Check HDD error. -->
        <Parameter name="CheckHDD"> 1</Parameter>
        <!-- MAXERROR: Maximun SATA HDD errors allowed. -->
        <Parameter name="HDDMaxErrors"> 0</Parameter>
        <!-- CHECKFSB: Set FSB Perfmon control before app starts. Read FSB Perfmon counters after app ends. -->
        <Parameter name="CheckFSB"> 1</Parameter>
        <!-- TIMELOGFSB: Duration between logging FSB in milliseconds. No logging if set to 0 -->
        <!-- Parameter name="TimeLogFSB"> 30000</Parameter -->
        <!-- LogPHY: turn on/off FSB PHY Logging. -->
        <Parameter name="LogPHY"> 0</Parameter>
        <!-- LogEcid: turn on/off Pervasive Ecid Logging. -->
        <Parameter name="LogEcid"> 0</Parameter>
        <!-- CPUFSBPhOffFromGPUGCScratch7: request from Randy Goettsch to do CPU batchtub testing -->
        <Parameter name="CPUFSBPhOffFromGPUCPScratch7"> 1</Parameter>
        <!-- MAXERROR: Maximun CPU FSB CRC errors allowed. -->
        <Parameter name="CPUFSBMaxCRCErrors"> 0</Parameter>
        <!-- MAXERROR: Maximun GPU FSB CRC errors allowed. -->
        <Parameter name="GPUFSBMaxCRCErrors"> 0</Parameter>
        <!-- CHECKBSB: Set BSB Perfmon events before app starts. Read BSB Perfmon counters after app ends. -->
        <Parameter name="CheckBSB"> 1</Parameter>
        <!-- TIMELOGBSB: Duration between logging BSB in milliseconds. No logging if set to 0 -->
        <!-- Parameter name="TimeLogBSB"> 30000</Parameter -->
        <!-- CHECKREPLAYS: Set BSB Perfmon events before app starts. Read BSB Perfmon counters after app ends. -->
        <Parameter name="CheckPCIEReplays"> 1</Parameter>
        <Parameter name="CheckPCIE"> 1</Parameter>
        <!-- CHECKGPU: examine PSRO on Gunga board -->
        <!-- WARNING:: crash may occur if this option is on when run on non-gunga board -->
        <Parameter name="CheckGPU"> 0</Parameter>
        <!-- PSRORepeatDisp: display PSRO repeatitively -->
        <Parameter name="PSRORepeatDisp"> 1</Parameter>
        <!-- CheckPDiePSRO: enable/disable display P-die PSRO -->
        <Parameter name="CheckPDiePSRO"> 1</Parameter>
        <!-- PSROSelRing0: Select PSRO Ring0. -->
        <Parameter name="PDiePSROSelRing0"> 1</Parameter>
        <!-- PSROSelRing1: Select PSRO Ring1. -->
        <Parameter name="PDiePSROSelRing1"> 1</Parameter>
        <!-- PSROSelRing2: Select PSRO Ring2. -->
        <Parameter name="PDiePSROSelRing2"> 1</Parameter>
        <!-- PSROSelRing3: Select PSRO Ring3. -->
        <Parameter name="PDiePSROSelRing3"> 1</Parameter>
        <!-- PSROSelRing4: Select PSRO Ring4. -->
        <Parameter name="PDiePSROSelRing4"> 1</Parameter>
        <!-- PSROSelRing5: Select PSRO Ring5. -->
        <Parameter name="PDiePSROSelRing5"> 1</Parameter>
        <!-- PSROSelRing6: Select PSRO Ring6. -->
        <Parameter name="PDiePSROSelRing6"> 1</Parameter>
        <!-- PSROSelRing7: Select PSRO Ring7. -->
        <Parameter name="PDiePSROSelRing7"> 1</Parameter>
        <!-- PSROSelRing8: Select PSRO Ring8. -->
        <Parameter name="PDiePSROSelRing8"> 1</Parameter>
        <!-- PSROSelRing9: Select PSRO Ring9. -->
        <Parameter name="PDiePSROSelRing9"> 1</Parameter>
        <!-- PSROSelRing10: Select PSRO Ring10. -->
        <Parameter name="PDiePSROSelRing10"> 1</Parameter>
        <!-- PSROSelRing11: Select PSRO Ring11. -->
        <Parameter name="PDiePSROSelRing11"> 1</Parameter>
        <!-- PSROSelRing12: Select PSRO Ring12. -->
        <Parameter name="PDiePSROSelRing12"> 1</Parameter>
        <!-- PSROSelRing13: Select PSRO Ring13. -->
        <Parameter name="PDiePSROSelRing13"> 1</Parameter>
        <!-- PSROSelRing14: Select PSRO Ring14. -->
        <Parameter name="PDiePSROSelRing14"> 1</Parameter>
        <!-- PSROSelRing15: Select PSRO Ring15. -->
        <Parameter name="PDiePSROSelRing15"> 1</Parameter>
        <!-- PSROSelRing16: Select PSRO Ring16. -->
        <Parameter name="PDiePSROSelRing16"> 1</Parameter>
        <!-- PSROSelRing17: Select PSRO Ring17. -->
        <Parameter name="PDiePSROSelRing17"> 1</Parameter>
        <!-- PSROSelRing18: Select PSRO Ring18. -->
        <Parameter name="PDiePSROSelRing18"> 1</Parameter>
        <!-- PSRORefCnt: Set PSRO RefCnt. -->
        <Parameter name="PDiePSRORefCnt"> 0x92A</Parameter>
        <!-- PSRODivide: Set PSRO Divide. -->
        <Parameter name="PDiePSRODivider"> 3</Parameter>
        <!-- CheckDDiePSRO: enable/disable display D-die PSRO -->
        <Parameter name="CheckDDiePSRO"> 0</Parameter>
        <!-- DDiePSRODiv: Set D-die PSRO Divide. -->
        <Parameter name="DDiePSRODiv"> 6</Parameter>
        <!-- DDiePSROCnt: Set D-die PSRO Output clock count. -->
        <Parameter name="DDiePSROCnt"> 0x7f</Parameter>
        <!-- CHECKSMC: Check SMC Mailbox Get, Set, Rcvd, Rspd -->
        <Parameter name="CheckSMC"> 0</Parameter>
        <!-- TIMELOGSMC: Duration between logging SMC in milliseconds. No logging if set to 0 -->
        <!-- Parameter name="TimeLogSMC"> 50000</Parameter -->
        <!-- CHECKSMC: Check SMC Mailbox Rcvd -->
        <Parameter name="CheckNtfEvent"> 0</Parameter>
        <!-- CHECKSMC: Check SMC Mailbox Get, Rspd -->
        <Parameter name="CheckGetRsp"> 1</Parameter>
        <Parameter name="CheckGetRspAVMode"> 1</Parameter>
        <Parameter name="CheckGetRspMiscData"> 1</Parameter>
        <Parameter name="CheckGetRspIRAddress"> 1</Parameter>
        <Parameter name="CheckGetRspPowerUpCause"> 1</Parameter>
        <Parameter name="CheckGetRspODDTray"> 1</Parameter>
        <Parameter name="CheckGetRspRTC"> 1</Parameter>
        <Parameter name="CheckGetRspTemperatures"> 1</Parameter>
        <Parameter name="CheckGetRspTilt"> 1</Parameter>
        <Parameter name="CheckGetRspMsgEcho"> 1</Parameter>
        <!-- Turn this option on only for Falcon+ Box -->
        <!-- WARNING:: crash may occur if this option is on when run on non-Falcon board -->
        <Parameter name="CheckGetTitleID"> 1</Parameter>
        <!-- CHECKSMC: Check SMC Mailbox Set -->
        <Parameter name="CheckSet"> 1</Parameter>
        <Parameter name="CheckSetCPUFanOverride"> 1</Parameter>
        <Parameter name="SetCPUFanOverrideFanSpeed"> 55</Parameter>
        <Parameter name="SetCPUFanOverrideOverrideEnable"> 1</Parameter>
        <Parameter name="CheckSetGPUFanOverride"> 1</Parameter>
        <Parameter name="SetGPUFanOverrideFanSpeed"> 45</Parameter>
        <Parameter name="SetGPUFanOverrideOverrideEnable"> 1</Parameter>
        <Parameter name="CheckSetSystemMode"> 1</Parameter>
        <Parameter name="SetSystemModeSystemMode"> 4</Parameter>
        <Parameter name="SetSystemModeStateTransfer"> 0</Parameter>
        <Parameter name="SetSystemModeRebootDelay"> 25</Parameter>
        <Parameter name="SetSystemModeRadonsOffOnReset"> 1</Parameter>
        <Parameter name="SetSystemModePersistLedOverridesOnReset"> 1</Parameter>
        <Parameter name="CheckSetPowerLED"> 1</Parameter>
        <Parameter name="SetPowerLEDPowerLedState"> 4</Parameter>
        <Parameter name="SetPowerLEDStartAnimation"> 0</Parameter>
        <Parameter name="CheckSetQuadrantLED"> 1</Parameter>
        <Parameter name="SetQuadrantLEDOverrideEnable"> 1</Parameter>
        <Parameter name="SetQuadrantLEDRedState"> 0xf</Parameter>
        <Parameter name="SetQuadrantLEDGreenState"> 0</Parameter>
        <Parameter name="CheckSetFanAlgorithm"> 1</Parameter>
        <Parameter name="SetFanAlgorithmQuietMode"> 1</Parameter>
        <Parameter name="SetFanAlgorithmCalibrationMode"> 0</Parameter>
        <Parameter name="CheckSetODDTray"> 1</Parameter>
        <Parameter name="SetODDTrayTrayState"> 0x62</Parameter>
        <Parameter name="CheckSetAudioEnable"> 1</Parameter>
        <Parameter name="SetAudioEnableAudioEnable"> 1</Parameter>
        <Parameter name="CheckSetError"> 1</Parameter>
        <Parameter name="SetErrorErrorCode"> 1</Parameter>
        <Parameter name="SetErrorBitIndex"> 1</Parameter>
        <Parameter name="SetErrorPatternField"> 0xf</Parameter>
        <!-- Turn this option on only for Falcon+ Box -->
        <!-- WARNING:: crash may occur if this option is on when run on non-Falcon board -->
        <Parameter name="CheckSetTitleID"> 1</Parameter>
        <Parameter name="SetTitleIDTitleID"> 0xf0e0d0c0</Parameter>
        <!-- CHECKSMC: Check SMC I2C -->
        <Parameter name="CheckI2C"> 0</Parameter>
        <Parameter name="I2CRegisterDescriptionFileName">GAME:\smci2c_registers.xml</Parameter>
        <!-- Vejle Settings -->
        <Parameter name="CheckVEJLE">1</Parameter>
        <Parameter name="LogVEJLEGDDR3">1</Parameter>
        <Parameter name="LogVEJLEHSIO">1</Parameter>
        <Parameter name="LogVEJLEPSRO">1</Parameter>
        <Parameter name="LogVEJLEPCIE">1</Parameter>
        <Parameter name="LogVEJLEPRV">1</Parameter>
      </ParameterList>
    </Variation>
  </Test>
</TestGroup>
